package com.example.vo;

import com.example.entity.enums.CouponTypeEnum;
import com.example.entity.enums.PromotionsScopeTypeEnum;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @author circle48
 */
@Data
@ApiModel(description = "用户端优惠券信息")
public class CouponVO implements Serializable {
    @ApiModelProperty("ID")
    @JsonFormat(shape =JsonFormat.Shape.STRING )
    private Long id;

    @ApiModelProperty("开始时间")
    private LocalDateTime startTime;

    @ApiModelProperty("结束时间")
    private LocalDateTime endTime;

    @ApiModelProperty("活动名称")
    private String promotionName;

    @ApiModelProperty("店铺名称")
    private String storeName;

    @ApiModelProperty("优惠券名称")
    private String couponName;

    @ApiModelProperty("优惠券分类[0->满减；1->折扣]")
    private CouponTypeEnum couponCategory;

    @ApiModelProperty("优惠券类型")
    private PromotionsScopeTypeEnum scopeType;

    @ApiModelProperty("消费门槛")
    private Integer minPoint;

    @ApiModelProperty("减免金额")
    private Integer reduceAmount;

    @ApiModelProperty("折扣券的最高抵扣金额")
    private Integer maxDiscountAmount;

    @ApiModelProperty("活动描述")
    private String description;

    @ApiModelProperty("是否可以领取")
    private Boolean available;


    @ApiModelProperty("是否已领取但未使用")
    private Boolean received;



}